Quiztabellen initialisieren

[Dies ist ein Fallbeispiel, das in einem separaten Fenster angezeigt wird. So können Sie das Beispiel und ein beliebiges anderes Hilfethema gleichzeitig betrachten. Das Fenster des Fallbeispiels lässt sich verschieben, in seiner Grösse ändern und über das Schliessfeld verlassen]

Die Aufgabendaten von QUIZ_BACKEND.MDB stammt aus der Datenbank TESTVERWALTUNG_BACKEND.MDB (siehe Quizaufgaben exportieren). Die benutzerspezifischen Daten - insbesondere die Scores - fallen indessen erst in den Benutzersitzungen an. Nach dem Start der Quizanwendung öffnet die Ereignisprozedur Form_Open des Formulars FrmStart von Access_Quiz.mdb die Datenbank QUIZ_BACKEND.MDB und initialisiert die benutzerspezifischen Daten:

Ereignisprozedur Form_Open
  Öffne die aus TESTVERWALTUNG.MDB generierte Quiz-Datenbank QUIZ_BACKEND.MDB
  Falls Primärschlüssel und Index in QuizZUORDNUNGS_LÖSUNGEN noch fehlen dann       '1)
    definiere einen Primärschlüssel aus Fragenschlüssel, Buchstabenpräfix und Zahlenpräfix
  Falls der Autor die Selbstkorrektur nicht erlaubt hat dann                        '2)
    verlange vom Benutzer die Matrikelnummer als Identifikation
    Falls die Matrikelnummer nicht leer ist dann
      speichere sie in MCSCORES und ZOSCORES
    sonst
      verlasse die Prozedur
    Für jede Alternative jeder Mehrfachwahlaufgabe von QuizMEHRFACHWAHL
      speichere in SCORESMC eine Zeile mit den folgenden Feldern:
        Fragenschlüssel
        Alternativenschlüssel
        Matrikelnummer                                                              '3)
        Testschlüssel                                                               '3)
        Benutzerlösung = False                                          'Voreinstellung
  

Erläuterungen

  1. Weil TransferDatabase die in der Ausgangsdatenbank TESTVERWALTUNG_BACKEND.MDB definierten Index- und Primärschlüsseleigenschaften nicht in die neue Datenbank QUIZ_BACKEND.MDB exportieren kann, muss nach dem ersten Login der Primärschlüssel für die Tabelle QuizZUORDNUNGS_LÖSUNGEN nochmals definiert und indiziert werden.

  2. Falls die Testautorin vor der Generierung des Quiz die Selbstkorrektur nicht erlaubt, wird von jedem Benutzer eine Matrikelnummer verlangt. Jedes Login in die Quiz-Datenbank fügt ausserdem der Tabelle SCORESMC eine Gruppe von Satzskeletten für den jeweiligen Teilnehmer an. SCORESMC enthält für jede Benutzerin so viele Sätze, wie Alternativen in den Mehrfachwahl-Aufgaben vorkommen (bei 10 Mehrfachwahlaufgaben zum Beispiel 4*10=40 Sätze). Die Spalten Fragenschlüssel und Alternativenschlüssel sind identisch mit den gleichnamigen Spalten der aus TESTVERWALTUNG_BACKEND.MDB exportierten Tabelle QuizMEHRFACHWAHL.

  3. Die Felder Testschlüssel und Matrikelnummer erhalten den Wert -1, falls die Testautorin die Selbstkorrektur gestattet. QUIZ_BACKEND.MDB überlässt dann die Korrektur der Antworten dem Testteilnehmer und verhindert, dass sie in die Scoretabellen von TESTVERWALTUNG_BACKEND.MDB übertragen werden. Testschlüssel und Matrikelnummer bleiben während der Testsitzung konstant. Das SCORESMC-Attribut Benutzerlösung wird gesetzt, sobald die Benutzerin die Aufgabe löst. Der Initialwert False (0) steht für ein leeres Kontrollkästchen (das der Testteilnehmer später markieren kann).